package cn.etynit.pet.service;

import cn.etynit.basic.util.AjaxResult;
import cn.etynit.basic.util.PageList;
import cn.etynit.org.domain.Employee;
import cn.etynit.pet.domain.SearchMasterMsg;
import cn.etynit.basic.service.IBaseService;
import cn.etynit.pet.dto.AcceptDto;
import cn.etynit.pet.dto.AllocationDto;
import cn.etynit.pet.dto.ReturnDto;
import cn.etynit.pet.query.SearchMasterMsgQuery;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author etynit
 * @since 2022-11-01
 */
public interface ISearchMasterMsgService extends IBaseService<SearchMasterMsg> {

    AjaxResult publish(SearchMasterMsg searchMasterMsg);

    /**
     * 查询店铺待处理数据
     * @param searchMasterMsg
     * @return
     */
    PageList<SearchMasterMsg> selectSearchMasterMessageByParam(SearchMasterMsgQuery searchMasterMsg);

    /**
     * 拒单
     * @param msgId
     * @param employee
     */
    void reject(Long msgId, Employee employee);

    /**
     * 接单
     * @param acceptDto
     */
    void accept(AcceptDto acceptDto);

    /**
     * 审核
     * @param id
     * @param employee
     */
    void risePetMsg(Long id, Employee employee);

    /**
     * 审核不通过
     * @param returnDto
     * @param employee
     */
    void returnMsg(ReturnDto returnDto, Employee employee);

    /**
     * 分配店铺
     * @param allocationDto
     * @param employee
     */
    void allocation(AllocationDto allocationDto, Employee employee);
}
